//
//  YWTroubleMissionDBManager.h
//  maintain
//
//  Created by 烟雨云渊 on 17/3/7.
//  Copyright © 2017年 ewin. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "YWSingleton.h"
#import "YWMission.h"
#import "YWDBTool.h"

@class YWTroubleMissionModel;

@interface YWTroubleMissionDBManager : NSObject
YWSingletonH(Manager)
/**
 *  创建维修数据库表
 *
 *  @return 结果
 */
- (BOOL)createTroubleMissionApiTable;
/**
 *  更新维修数据库表，数组更新
 *
 *  @param troubleMissionArray 更新维修数组
 *
 *  @return 结果
 */
- (BOOL)updateTroubleMissionWithArray:(NSArray*)troubleMissionArray needUpdateReportTrouble:(BOOL)need;
/**
 *  设置维修任务上传失败
 *
 *  @param troubleMission 维修模型
 *
 *  @return 结果
 */
- (BOOL)setUploadFailWithTroubleMissionModel:(YWTroubleMissionModel*)troubleMission;
/**
 *  获取未完成的维修任务id串
 *
 *  @return 数量
 */
- (NSString*)allUnfinishTroubleMissionIds;
- (YWTroubleMissionModel*)troubleMissionModelWithFMResultSet:(FMResultSet*)set FMDatabase:(FMDatabase*)db needSelectReportTrouble:(BOOL)need;
/**
 *  获取所有的我的维修 (根据状态)
 *
 *  @param page 页数
 *
 *  @return 结果
 */
- (NSArray*)troubleMissionModelWithStatus:(YWTroubleMissionStatus)status page:(NSInteger)page;
/**
 *  通过troubleId获取维修任务
 *
 *  @param troubleId 维修Id
 *
 *  @return 结果
 */
- (YWTroubleMissionModel*)troubleMissionModelWithTroubleId:(NSInteger)troubleId;
/**
 *  获取上传维修任务
 *
 *  @return 任务模型数组
 */
- (NSArray*)uploadFailTroubleMissionArray;
/**
 *  更新维修单状态
 *
 *  @param status 报障单状态
 *
 *  @return 结果
 */
-(BOOL)updateTroubleMissionStatus:(NSInteger)status troubleId:(NSInteger)troubleId;
@end
